package com.yonglian.management.service;

import com.yonglian.management.domain.ActivityProperty;
import java.util.Optional;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

/**
 * Service Interface for managing {@link com.yonglian.management.domain.ActivityProperty}.
 */
public interface ActivityPropertyService {
    /**
     * Save a activityProperty.
     *
     * @param activityProperty the entity to save.
     * @return the persisted entity.
     */
    ActivityProperty save(ActivityProperty activityProperty);

    /**
     * Updates a activityProperty.
     *
     * @param activityProperty the entity to update.
     * @return the persisted entity.
     */
    ActivityProperty update(ActivityProperty activityProperty);

    /**
     * Partially updates a activityProperty.
     *
     * @param activityProperty the entity to update partially.
     * @return the persisted entity.
     */
    Optional<ActivityProperty> partialUpdate(ActivityProperty activityProperty);

    /**
     * Get all the activityProperties.
     *
     * @param pageable the pagination information.
     * @return the list of entities.
     */
    Page<ActivityProperty> findAll(Pageable pageable);

    /**
     * Get the "id" activityProperty.
     *
     * @param id the id of the entity.
     * @return the entity.
     */
    Optional<ActivityProperty> findOne(Long id);

    /**
     * Delete the "id" activityProperty.
     *
     * @param id the id of the entity.
     */
    void delete(Long id);
}
